﻿using System.Threading;
using System.Threading.Tasks;
using K9Nano.MultiTenancy;

namespace K9Nano.Application.MultiTenancy
{
    public interface ITenantAppService : IApplicationService
    {
        ValueTask<TenantInfo> CreateAsync(TenantCreateInput input, CancellationToken cancellation);
        ValueTask DeleteAsync(string id, CancellationToken cancellation);
        ValueTask UpdateAsync(TenantEditInput input, CancellationToken cancellation);
        ValueTask<PagedResultDto<TenantDto>> GetPagedListAsync(TenantPagedInput input, CancellationToken cancellation);
    }
}